iT邦幫忙

2025 iThome 鐵人賽

DAY 29
0
自我挑戰組

Leetcode 自學系列 第 29

自學Leetcode Day29

  • 分享至 

  • xImage
  •  

20. Valid Parentheses(有效的括號)
1.題目說明:給你一個只包含 '(', ')', '{', '}', '[', ']' 的字串 s,判斷這個字串的括號是否是有效的。
有效條件:
左括號必須由相同類型的右括號關閉。
左括號必須以正確的順序關閉。
2.解題思路:
1.使用 Stack(堆疊) 結構:

  • 遇到左括號 → 把「對應的右括號」推入堆疊。
    
  • 遇到右括號 → 查看堆疊頂端是否與當前右括號相符。
    
    2.若不相符或堆疊為空 → 無效。
    3.最後若堆疊為空 → 全部正確匹配。
    3.執行流程示意:
    s = "{[]}"
    字元
    https://ithelp.ithome.com.tw/upload/images/20251013/20169241dOZwxKnx52.png
    結果:true
    4.程式碼截圖:https://ithelp.ithome.com.tw/upload/images/20251013/201692413FNWmTL6mY.png
    5.學習心得:此次練習是我這次鐵人賽的最後一個題目了,我覺得這樣一天天練習後我對程式比較沒有那麼討厭了,但這題我在做的過程中有遇到:忘記檢查堆疊是否為空(會造成 EmptyStackException)這個問題,但在找尋解答後我就清楚許多了。

上一篇
自學Leetcode Day28
下一篇
Day30-學習心得
系列文
Leetcode 自學30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言